double** euler_angles_to_body_to_nav_matrix(double* euler);

double* body_to_nav_matrix_to_euler_angles(double** Cbn);

void _body_to_nav_matrix_to_euler_angles(double* euler, double** Cbn);

double* body_to_nav_matrix_to_quaternion(double** Cbn);

double** quaternion_to_body_to_nav_matrix_shin(double* q);

void _quaternion_to_body_to_nav_matrix_shin(double** Cbn, double* q);

double** quaternion_to_body_to_nav_matrix_eskin(double* q);

void _quaternion_to_body_to_nav_matrix_eskin(double** Cbn, double* q);

double** quaternion_update_matrix_shin(double* dtheta);

void _quaternion_update_matrix_shin(double** qum, double* dtheta);

double** quaternion_update_matrix_eskin(double* dtheta);

void _quaternion_update_matrix_eskin(double** qum, double* dtheta);

double** sculling_matrix(double* dtheta);

void _sculling_matrix(double** sm, double* dtheta);
